package main

import "fmt"

// 定义函数
// 函数是对代码的封装,把一段代码抽象出来封装到一个函数中
func sum(x int, y int) (ret int) {
	ret = x + y
	return
}

// 没有返回值的函数
func f1(x int, y int) {
	fmt.Println(x + y)
}

// 没有参数没有返回值
func f2() {
	fmt.Println("f2")
}

// 没有参数但有返回值
func f3() int {
	return 3
}

// 可变长参数
// 可变长参数必须放在参数的最后一位
func f4(x string, y ...int) {
	fmt.Println(x)
	// y是int类型的切片
	fmt.Println(y)
}

func main() {
	r := sum(1, 2)
	fmt.Println(r) // 3

}
